<?php

/**
 * Ciudad 
 * @Ciudad
 * GenProg Lenguaje de Modelos
 *  
 *
 * @author      Carlos Peña <crash.madover@gmail.com>
 * @package     application.model.sis.nomina
 * @copyright   (c) 2013, GenProg
 * @version     v 1.0
 */
class Ciudad {
  // -------------------------------------------------------------------------------------

  /**
   * Prefijo de los Campos
   *
   * @access    public
   * @var       string
   */
  public $prefijo = 'CIU';

  // -------------------------------------------------------------------------------------

  /**
   * Nombre de la Tabla en la Base de Datos
   *
   * @access    public
   * @var       string
   */
  public $tabla = 'K_TCiudad';


  // -------------------------------------------------------------------------------------

  /**
   * Campos del Sistema y Base de datos
   *
   * @access    public
   * @var       array()
   */
  public $struc = array(// 
    'cmp' => array(//
      'oid' => array('clave' => 'PRIMARY', 'tipo' => 'INT', 'longitud' => '11', 'incremento' => 1, 'comentario' => 'Identificador', 'visible' => 'oculto'), //
      'oidFKE' => array('clave' => 'KEY', 'tipo' => 'INT', 'longitud' => '11', 'comentario' => 'Ciudad', 'visible' => 'oculto',
        'clave_foranea' => array('estado', 'oid'),'union'=>'estado'), //
      'nomb' => array('tipo' => 'VARCHAR', 'comentario' => 'Nombre de la ciudad', 'longitud' => '64', 'accion' => 'consulta'), //
      'zona_postal' => array('tipo' => 'VARCHAR', 'comentario' => 'Zona Postal', 'longitud' => '16'), //
      'codigo' => array('tipo' => 'VARCHAR', 'comentario' => 'Codigo Interno', 'longitud' => '64'), //
      'capital' => array('tipo' => 'INT', 'comentario' => '0: Capital, 1: Inactivo', 'longitud' => '1'), //
    ),
    );

  // -------------------------------------------------------------------------------------

  /**
   * Descripcion del modelo
   * 
   * @access    public
   * @var       string
   */
  public $dtd = 'Crear Ciudad';

  // -------------------------------------------------------------------------------------

  /**
   * Permite crear botones asignados a la Interfaz
   * C = Crear, R = Leer (Buscar), U = Actualizar (Modificar), D = Eliminar
   *
   * @access public
   * @var string
   */
  public $botones = 'CRUD';

  
  function Insertar(){
    //insert into K_TCiudad (CIU_oid, CIU_oidFKE,CIU_nomb,CIU_capital) select id_ciudad,id_estado,ciudad,capital from ciudades;
  }
  
  /**
   * Listar Ciudades 
   */
  function LCiudad(Orm $orm = null, $arr = array()) {
  	$i = 0;
  	$oCab = array();
  	$oFil = array();
  	$oCab[1] = array("titulo" => "oid", "atributos" => "width:60px", "oculto" => 1);
  	$oCab[2] = array("titulo" => "Ciudad", "atributos" => "width:260px","tipo"=>"texto","buscar"=>1);
  	$oCab[3] = array("titulo" => "Codigo Postal", "atributos" => "width:100px","tipo"=>"texto");
  	$oCab[4] = array(//
  			'titulo' => '#',
  			'mantiene' => 1, // Que la fila no se elimine
  			'tipo' => 'bimagen', //Ruta Imagen
  			'metodo' => 2,
  			'parametro' => '1,2,3',
  			'ruta' => IMG . 'aceptar.png',
  			'funcion' => 'Modifica_Ciudad',
  			'atributos' => "width:8px"
  	);
  	
  	if (isset($orm)) {
  		$rs = $orm->GPQL('Ciudad')->Donde_Columnas('CIU_oidFKE =' .  $arr['oid'])->Listar_Donde()->Ejecutar();
  		foreach ($rs['rs'] as $sC => $sV) {
  			$oFil[++$i] = array(//
  					'1' => $sV->CIU_oid,
  					'2' => $sV->CIU_nomb,
  					'3' => $sV->CIU_zona_postal,
  					'4' => ''
  					
  			);
  		}
  	}
  
  	$contratos = array("Cabezera" => $oCab, "Cuerpo" => $oFil, "Origen" => "json", "titulo" => "Listar Ciudades de "+$arr['nombre']);
  	return json_encode($contratos);
  }
}

?>
